Punt to slow path for itc.i/d for region0 to avoid metaphys problem
authordjm@kirby.fc.hp.com <djm@kirby.fc.hp.com>
Fri, 11 Nov 2005 19:05:38 +0000 (13:05 -0600)
committerdjm@kirby.fc.hp.com <djm@kirby.fc.hp.com>
Fri, 11 Nov 2005 19:05:38 +0000 (13:05 -0600)
Signed-off by: Dan Magenheimer <dan.magenheimer@hp.com>

xen/arch/ia64/xen/hyperprivop.S

index 87ec9060c68c808c9f4c41106dc1756c53a2a29a..bfcd9c4576bddcbc4470c904259157da1c8cc494 100644 (file)
@@ -1966,6 +1966,12 @@ ENTRY(hyper_itc_d)
        ld8 r23=[r23];;
        extr.u r24=r23,2,6;;            // r24==logps
        cmp.gt p7,p0=PAGE_SHIFT,r24
+(p7)   br.spnt.many dispatch_break_fault ;;
+       adds r21=XSI_IFA_OFS-XSI_PSR_IC_OFS,r18 ;;
+       ld8 r21=[r21];;
+       // for now, punt on region0 inserts
+       extr.u r21=r21,61,3;;
+       cmp.eq p7,p0=r21,r0
 (p7)   br.spnt.many dispatch_break_fault ;;
        movl r27=THIS_CPU(cpu_kr)+IA64_KR_CURRENT_OFFSET;;
        ld8 r27=[r27];;